package com.ztools.pc.service.sys;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ztools.common.model.pc.sys.Permission;
import com.ztools.common.model.pc.sys.PermissionTreeItem;
import com.ztools.common.util.common.PageUtil;

import java.util.List;

/**
 * @Author:一口香菜
 * @Date: 2023/3/4  15:32
 * @Version 1.0
 */
public interface PermissionService extends IService<Permission> {

    /**
     * 根据ID集合获取数据
     *
     * @param ids
     * @return
     */
    List<Permission> findByIds(List<Long> ids);

    /**
     * 分页查询
     *
     * @param pageUtil
     * @return
     */
    Page<Permission> findList(PageUtil<Permission> pageUtil);

    /**
     * 获取权限菜单树结构数据
     *
     * @return
     */
    List<PermissionTreeItem> findPermissionTreeData();

    /**
     * 修改
     *
     * @param permission 对象
     * @return
     */
    boolean update(Permission permission);

    /**
     * 删除
     *
     * @param permission 对象
     * @return
     */
    boolean delete(Permission permission);

    /**
     * 添加
     *
     * @param permission 对象
     * @return
     */
    boolean add(Permission permission);

}
